從科學研究到大數據,有了 GPU Computing 能做更多
NVIDIA 在 GTC 的第二天安排媒體對於今年 GTC 的幾項主題進行更深度的訪談,在 GPU Computing 方面,近期的大突破就是與瑞士國家超級電腦運算中心合作的全球最大規模的 GPU 運算超級電腦,這套系統基於 CRAY 的機架,並且導入大量的 Tesla K20 運算卡,其目的是希望能將複雜的阿爾卑斯山的氣候運測精度縮減到一平方公里之內,透過導入 K20 後,相較原本純 CPU 架構效能提昇三倍。
而筆者曾輾轉聽過台灣氣象局對於 GPU Computing 用在氣象運算的看法,表示以台灣現有對於氣象運算的編碼僅能提昇 30% 左右的效能;而 NVIDIA 認為 GPU 運算對於氣象這類需要繁雜 Kernel 的運算是有相當大的幫助的,台灣氣象局當時評估的結果不如預期,主要問題應該是出在程式的編碼仍未最佳化。
當然 GPU 運算是這幾年才開始,多半氣象運算的程式都是沿用許久,而這次瑞士國家超級電腦運算中心是透過 NVIDIA 約莫於近兩年開始推動的 Open ACC 的方式,讓整體效能提升到 3 倍。關鍵在於 Open ACC 僅需要在原本的編碼當中,針對需要使用平行運算的部份加入兩行註解,就能輕鬆的將現有的程式轉換到平行運算,不須重新撰寫程式, NVIDIA 相信有瑞士的案例再先,應該可以讓台灣氣象局對平行運算用於氣象推測的效益改觀。
至於其它民生相關的 Big Data 應用方面,昨天已經有一篇介紹,包括社群的關鍵字、音樂比對、圖像搜索等等,都可看到透過 GPU Computing 帶來的綠能與高效率表現。另外還可用在網路視訊的即時串流,例如一個線上氣象網站 Weather Channel ,就是利用 GPU 運算協助分析每個收看用戶的設備類型、解析度支援、頻寬,進行即時性的串流影片的格式最佳化。
NVIDIA 為了讓編碼人員更容易導入 GPU Computing ,他們除了原本的 C 語言、 C++ 等等外,最近還宣佈支援一個新興的直譯式編碼語言 Python ,這個語言由於簡單、易學,廣被程式編碼人員歡迎, NVIDIA 希望藉由支援 Pyton ,能夠讓 GPU Computing 更易使用。
至於昨天展示過的 Kayla 平台,今天做了更完整的介紹,它是一顆 Tegra 3 的晶片透過 PCIe 介面連接一張用於筆電的運算級 Kepler 架構運算卡,可供同時進行即時光線追蹤、煙霧模擬以及海洋模擬。 Kayla 可說是為了接下來整合支援 CUDA 的 GPU 的 Logan 與 Paker 做準備,讓程式編碼人員預先能進行開發。
理論上 Kayla 的平台能夠做到多張 Kayla 的協同運算,不過這還是要看到時候所合作的 OEM 廠商的產品布局;而 NVIDIA 認為,在導入具備 Maxell GPU 與 64 位元 Denver 核心架構的 Parker 推出後,可望能看到 ARM 架構與 NVIDIA 一同踏入 HPC (超級電腦)領域的可能性。